package com.linkgie.galaxyframework.persistence.data;

import com.linkgie.galaxyframework.utils.bean.FieldSelect;

public interface EntityGroupSorter<T, R> {

    /**
     * 升序排序；
     * 
     * @param sort
     * @return
     */
    EntityGroupSorter<T, R> ascBy(FieldSelect<R> sortFunction);

    /**
     * 降序排序；
     * 
     * @param sort
     * @return
     */
    EntityGroupSorter<T, R> descBy(FieldSelect<R> sortFunction);

    /**
     * 完成分组聚合；
     * 
     * @return
     */
    EntityGroupExecutor<T, R> done();

}
